Skip to content

portable: adopt Agent Plugins 1.0.0 as the pinned portable contract - #306

Merged
ScriptedAlchemy merged 1 commit into
mainfrom
wave/agent-plugins-standard
Sep 2, 2026
Merged

portable: adopt Agent Plugins 1.0.0 as the pinned portable contract#306
ScriptedAlchemy merged 1 commit into
mainfrom
wave/agent-plugins-standard

Conversation

@ScriptedAlchemy

Copy link
Copy Markdown
Owner

Summary

Adopts the Agent Plugins open standard (agent-plugins.org, spec 1.0.0) as the contract of the existing portable target — no new target, preserving the single-route contract — and pins fresh adoption evidence:

  • PROVENANCE.json: re-verified schema hashes, retrievedAt: 2026-09-01, and the spec repository pin (agentplugins/agent-plugins-spec@ff8ab5e39, 2026-08-19).
  • portable-1.0.0.json capability table: dated adoption evidence (native-client roster incl. Cursor local loading) and the Cursor 3.18.25 IDE dogfood findings, including three observed client conformance gaps (no ${PLUGIN_ROOT} expansion in cwd/args, omitted-cwd default is $HOME not plugin root).
  • adapterRevision 1.2.0 → 1.3.0; install surface (INSTALL.md) names the standard precisely and the native clients.
  • New repeatable proof: runPortableHostInstallProof against a dedicated host-install-portable fixture — installer execution + isolated-Cursor-home filesystem shape + pinned-schema conformance + idempotency, with proof-scope language that explicitly does NOT claim IDE-loader evidence. (The shared host-install fixture is untouched; its probe skill's Codex targets: frontmatter extension correctly fails portable validation with AB6015, which is why the portable proof uses its own clean fixture.)
  • IDE dogfood audit: docs/audits/2026-09-02-agent-plugins-cursor-ide-proof.md + screenshots under docs/assets/agent-plugins-cursor-proof/ — the real Cursor 3.18.25 plugin loader (isolated instance) discovered the emitted plugin (Local badge), its skill, and its MCP config, and completed a stdio handshake once given a Cursor-launchable configuration.

Why evolve portable (not plugin, not a new target)

portable already emitted the exact Agent Plugins 1.0.0 layout (root plugin.json with the canonical $schema, skills/, mcp.json) with vendored schemas. The plugin multi-host bundle intentionally omits a root plugin.json because Codex gives it precedence and would disable hooks/apps. A new target would duplicate portable's contract.

Test plan

  • Portable host-install proof (new): 4/4 pass
  • Adapter metadata, portable-adapter, install-surface, build, session tests
  • tsc --noEmit (build project), rslint clean
  • Cursor IDE dogfood proof (isolated Cursor 3.18.25, screenshots archived)

Pin spec repository commit ff8ab5e39 with refreshed schema provenance, add
dated adoption evidence (native-client roster, Cursor 3.18.25 IDE dogfood
audit with three observed placeholder-expansion conformance gaps), bump the
portable adapterRevision to 1.3.0, refresh the install surface wording, and
add a repeatable installer/filesystem/pinned-schema conformance proof against
an isolated Cursor home via a dedicated host-install-portable fixture.
@ScriptedAlchemy
ScriptedAlchemy merged commit 0560c75 into main Sep 2, 2026
@changeset-bot

changeset-bot Bot commented Sep 2, 2026

Copy link
Copy Markdown

🦋 Changeset detected

Latest commit: 3f4a1ee

The changes in this PR will be included in the next version bump.

This PR includes changesets to release 1 package
Name Type
agent-bundle Minor

Not sure what this means? Click here to learn what changesets are.

Click here if you're a maintainer who wants to add another changeset to this PR

@chatgpt-codex-connector

chatgpt-codex-connector Bot commented Sep 2, 2026

Copy link
Copy Markdown

Codex Review Summary

This comment shows the latest Codex review activity on this pull request.

Review Status Commit Review trigger
📝 Code Review Completed 2026-09-02T16:19:51.943442Z 3f4a1ee PR opened
ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review" or "@codex security review".

Codex reacts with 👀 while any review is running, comments if it has suggestions, and reacts with 👍 once all reviews finish with no findings.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant